home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 26.zip / BS1 part 26 / Aztec C v5.2a disk 4.adf / 204inc_h.lzh / graphics / gfxbase.h < prev    next >
C/C++ Source or Header  |  1991-03-14  |  3KB  |  114 lines

  1. #ifndef GRAPHICS_GFXBASE_H
  2. #define GRAPHICS_GFXBASE_H
  3. /*
  4. **    $Filename: graphics/gfxbase.h $
  5. **    $Release: 2.04 $
  6. **    $Revision: 37.2 $
  7. **    $Date: 91/02/07 $
  8. **
  9. **    graphics base definitions
  10. **
  11. **    (C) Copyright 1985,1986,1987,1988,1989 Commodore-Amiga, Inc.
  12. **        All Rights Reserved
  13. */
  14.  
  15. #ifndef EXEC_LISTS_H
  16. #include <exec/lists.h>
  17. #endif
  18. #ifndef EXEC_LIBRARIES_H
  19. #include <exec/libraries.h>
  20. #endif
  21. #ifndef EXEC_INTERRUPTS_H
  22. #include <exec/interrupts.h>
  23. #endif
  24.  
  25. struct GfxBase
  26. {
  27.     struct Library  LibNode;
  28.     struct View *ActiView;
  29.     struct copinit *copinit;    /* ptr to copper start up list */
  30.     long    *cia;        /* for 8520 resource use */
  31.     long    *blitter;        /* for future blitter resource use */
  32.     UWORD   *LOFlist;
  33.     UWORD   *SHFlist;
  34.     struct bltnode *blthd,*blttl;
  35.     struct bltnode *bsblthd,*bsblttl;
  36.     struct Interrupt vbsrv,timsrv,bltsrv;
  37.     struct List     TextFonts;
  38.     struct  TextFont *DefaultFont;
  39.     UWORD  Modes;            /* copy of current first bplcon0 */
  40.     BYTE VBlank;
  41.     BYTE Debug;
  42.     WORD BeamSync;
  43.     WORD system_bplcon0;    /* it is ored into each bplcon0 for display */
  44.     UBYTE   SpriteReserved;
  45.     UBYTE   bytereserved;
  46.     UWORD   Flags;
  47.     WORD   BlitLock;
  48.     WORD    BlitNest;
  49.  
  50.     struct    List    BlitWaitQ;
  51.     struct    Task    *BlitOwner;
  52.     struct    List    TOF_WaitQ;
  53.     UWORD    DisplayFlags;        /* NTSC PAL GENLOC etc*/
  54.                     /* flags initialized at power on */
  55.     struct SimpleSprite **SimpleSprites;
  56.     UWORD    MaxDisplayRow;        /* hardware stuff, do not use */
  57.     UWORD    MaxDisplayColumn;    /* hardware stuff, do not use */
  58.     UWORD    NormalDisplayRows;
  59.     UWORD    NormalDisplayColumns;
  60.     /* the following are for standard non interlace, 1/2 wb width */
  61.     UWORD    NormalDPMX;        /* Dots per meter on display */
  62.     UWORD    NormalDPMY;        /* Dots per meter on display */
  63.     struct    SignalSemaphore *LastChanceMemory;
  64.     UWORD    *LCMptr;
  65.     UWORD    MicrosPerLine;        /* 256 time usec/line */
  66.     UWORD    MinDisplayColumn;
  67.     UBYTE    ChipRevBits0;
  68.     UBYTE    crb_reserved[5];
  69.     UWORD    monitor_id;        /* normally null */
  70.     ULONG    hedley[8];
  71.     ULONG    hedley_sprites[8] ;    /* sprite ptrs for intuition mouse */
  72.     ULONG    hedley_sprites1[8] ;        /* sprite ptrs for intuition mouse */
  73.     WORD    hedley_count;
  74.     UWORD    hedley_flags;
  75.     WORD    hedley_tmp;
  76.     LONG    *hash_table;
  77.     UWORD    current_tot_rows;
  78.     UWORD    current_tot_cclks;
  79.     UBYTE    hedley_hint;
  80.     UBYTE    hedley_hint2;
  81.     ULONG    nreserved[4];
  82.     LONG    *a2024_sync_raster;
  83.     WORD   control_delta_pal;
  84.     WORD   control_delta_ntsc;
  85.     struct    MonitorSpec *current_monitor;
  86.     struct    List MonitorList;
  87.     struct    MonitorSpec *default_monitor;
  88.     struct    SignalSemaphore *MonitorListSemaphore;
  89.     VOID    *DisplayInfoDataBase;
  90.     struct    SignalSemaphore *ActiViewCprSemaphore;
  91.     ULONG    *UtilityBase;        /* for hook and tag utilities    */
  92.     ULONG    *ExecBase;        /* to link with rom.lib    */
  93.     };
  94.  
  95. #define NTSC        1
  96. #define GENLOC        2
  97. #define PAL        4
  98. #define TODA_SAFE    8
  99.  
  100. #define BLITMSG_FAULT    4
  101.  
  102. /* bits defs for ChipRevBits */
  103. #define    GFXB_BIG_BLITS    0
  104. #define    GFXB_HR_AGNUS    0
  105. #define GFXB_HR_DENISE    1
  106.  
  107. #define GFXF_BIG_BLITS    1
  108. #define    GFXF_HR_AGNUS    1
  109. #define GFXF_HR_DENISE    2
  110.  
  111. #define GRAPHICSNAME    "graphics.library"
  112.  
  113. #endif    /* GRAPHICS_GFXBASE_H */
  114.